﻿using Abp.EntityFrameworkCore;
using FinalItem.SzrModule;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using MySystemSetup.ICustomRepository;
using System.Data;
using System.Data.Common;
using System.Reflection;
using Volo.Abp.DependencyInjection;

namespace MySystemSetup.CustomRepository
{
//    public class SqlRepository : ISqlRepository, ITransientDependency
//    {
//        private readonly IDbContextProvider<SzrModuleMigrationsDbContext> _dbContextProvider;

//        public SqlRepository(IDbContextProvider<SzrModuleMigrationsDbContext> dbContextProvider)
//        {
//            _dbContextProvider = dbContextProvider;
//        }


//        /// <summary>
//        /// 执行给定的命令
//        /// </summary>
//        /// <param name="sql">命令字符串</param>
//        /// <param name="parameters">要应用于命令字符串的参数</param>
//        /// <returns>执行命令后由数据库返回的结果</returns>
//        public  async int Execute(string sql, params object[] parameters)
//        {
//                         return _dbContextProvider.GetDbContext().Database.ExecuteSql(sql);
//        }

//        /// <summary>
//        /// 创建一个原始 SQL 查询，该查询将返回给定泛型类型的元素。
//        /// </summary>
//        /// <typeparam name="T">查询所返回对象的类型</typeparam>
//        /// <param name="sql">SQL 查询字符串</param>
//        /// <param name="parameters">要应用于 SQL 查询字符串的参数</param>
//        /// <returns></returns>
//        public async Task<IQueryable<T>> SqlQuery<T>(string sql, params object[] parameters)
//        {
//            return (await _dbContextProvider.GetDbContextAsync()).Database.SqlQuery<T>(sql).AsQueryable<T>();
//        }

      
//    }

}
